package main
import (
	"fmt"
	"math"
)

func main(){
	
	var age int //变量声明
	fmt.Println("age",age)
	age = 10	//赋值后
	fmt.Println("age=",age)

	var age1 int = 23 //声明变量并且初始化
	fmt.Println("age1=",age1)

	var age2 = 213 //可以推断类型
	fmt.Println("age2=",age2)

	// 声明多个变量
	var width, height int = 100, 50
	fmt.Println("width=",width,"height=",height)

	var(
		name3 = "yanghao"
		age3 = 23
		height3 int
	)
	fmt.Println("name3=",name3,"age3=",age3,"height3=",height3)

	// 简短声明
	name4, age4 := "yanghao4", 21
	fmt.Println("name4=",name4,"age4=",age4)


	a, b := 20, 30 // 声明变量a和b
    fmt.Println("a is", a, "b is", b)
    b, c := 40, 50 // b已经声明，但c尚未声明
    fmt.Println("b is", b, "c is", c)
    b, c = 80, 90 // 给已经声明的变量b和c赋新值
    fmt.Println("changed b is", b, "c is", c)

	a1, b1 := 145.1, 12.3
	c1:= math.Min(a1,b1)
	d1:= math.Max(a1,b1)
    fmt.Println("c1 ==", c1)
    fmt.Println("d1 ==", d1)


	// 由于GO是强类型 不可以直接转换类型 
	// age5 := 15	//age是int类型
	// age5 = "21312" //报错


}